昨天的文章提到了不同手機使用 PixiJS 的差異
實際上在 PixiJS v5 後,將 canvas 的支援方法搬到 pixi.js-legacy 裡,如需向下相容只支援 canvas 的裝置時,需另外加入 pixi.js-legacy
發現 Android 5.0 (Android Lollipop) 以下的環境不支援 WebGL。
型號:Samsung GALAXY J7
WebGL 相容於:
然而,使用者的 GPU 也必須支援。
當環境不支援 WebGL 時
可直接下載目前版本的 pixi-legacy:
或從 PixiJS Release頁 最下方下載:
並在 html 中引入檔案:
<script src="js/plugin/pixi-legacy.min.js"></script>
舊版 PIXI 會偵測瀏覽器是否支援 WebGL,不支援時會自動使用 Canvas 模式運算,或者可使用 forceCanvas 設定,強制 PIXI 使用 Canvas 模式執行
PixiJS v5 後,使用 forceCanvas 讓 PIXI 強迫使用 Canvas 模式執行時
須引入 pixi.js-legacy 或 @pixi/canvas-renderer,否則此設定會被忽略
- 在 支援 Canvas 但 不支援 WebGL 的瀏覽器時,可使用這個設定
- 使用 Canvas 模式 時,一些使用 WebGL 的效果 可能會
不顯示 / 有問題
檔案大小:
pixi.min.js:354KB (v5.1.5)
pixi-legacy.min:428KB
pixi-legacy.js.map:2.2MB
pixi-legacy.min 比 pixi.min 本身還要大
由於 pixi-legacy 是擴充 plugin,未來會不會隨著 PixiJS 版號更新就不支援了,也有可能
Renderer 的相關討論,可參考我先前的文章:
[PixiJS - Day-06] 起手式:View 與 Renderer
這篇也是同事遇到的問題與整理,有一定的重要性,寫在系列文章裡